// 第一题
// js中对象合并的方法

// 第一种 Onject.assgin(obj1, obj2)
// 该方法会覆盖同名属性
let obj1 = {
    name: 'a',
};
let obj2 = {
    name: 'b',
};

Object.assign(obj1, obj2);
console.log('Object.assign=>', obj1);

// 第二中  拓展运算符号
// 1、该方法会覆盖同名属性
let obj3 = {
    name: 'c'
}
let obj4 = {...obj3, name: 'd', age: 12};
console.log('拓展运算符号:', obj4);

// 第三种 lodash.merge()
// 第四种 jquery.extend()


// 第二题
// 通过fill方法填充二维数组时应该注意的
// fill方法如果用引用类型填充那边使用的引用
let arr = Array.from({length: 4}).fill([{name: 'a'}]);
// 若改变arr[0][0].name = 'c'; 那么arr每一项都会改变，如果需要不受影响就使用for循环
let array = [];
for(var i = 0; i < 4; i++) {
    let temp = [{name: 'a'}];
    array[i] = temp;
}
